مرورگر شما از این ویدیو پشتیبانی نمی کند.
نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
(صرفا برای مشاهده نمونه ویدیو، ممکن هست نیاز به شکن داشته باشید.)
بارگزاری مجدد
توضیحات دوره:
این دوره ۸۰ ساعته پروژه محور، غوطهوری عمیقی در iOS 18 و SwiftUI 6 ارائه میدهد و با مبانی زبان Swift مانند متغیرها، جریان کنترل، توابع و برنامهنویسی مرتبه بالا (Higher-Order) آغاز میشود. شما یاد خواهید گرفت که رابطهای کاربری مدرن و واکنشگرا را با استفاده از استکها، گریدها، ژستها (Gestures) و انیمیشنها از طریق پروژههای واقعی مانند ماشین حساب، فلشکارت، اپلیکیشنهای مدیتیشن و موارد دیگر بسازید.
سپس دوره به موضوعات پیشرفته از جمله مدیریت وضعیت با @State، @Binding، ObservableObjects و ذخیرهسازی دادهها با استفاده از SwiftData و Core Data میپردازد. شما الگوی طراحی MVVM، بومیسازی (Localization)، حالت تاریک (Dark Mode) و طراحی تطبیقی برای آیپد، مک و اندازههای مختلف صفحه نمایش را بررسی خواهید کرد. ادغام CoreML به شما امکان میدهد ویژگیهای هوشمند یادگیری ماشین را به اپلیکیشنهای خود اضافه کنید. تمرینهای کدنویسی و پروژههای عملی، مفاهیم و بهترین روشها را در طول این مسیر تقویت میکنند.
در پایان، شما اپلیکیشنهای حرفهای و صیقلخوردهای برای iOS ساخته خواهید داشت که تسلط شما بر Swift، SwiftUI، انیمیشنها، جریان دادهها و الگوهای معماری را نشان میدهد. این دوره برای توسعهدهندگانی که به دنبال ساخت اپلیکیشنهای پیشرفته در جدیدترین پلتفرم اپل هستند و میخواهند برای چالشهای دنیای واقعی و انتشار اپلیکیشن آماده شوند، ایدهآل است.
- درک و بهکارگیری مبانی برنامهنویسی Swift
- ساخت رابطهای کاربری واکنشگرا با SwiftUI 6
- مدیریت وضعیت اپلیکیشن با @State، @Binding و ObservableObjects
- طراحی انیمیشنها و مدیریت تعاملات پیچیده ژستها
- پیادهسازی معماری MVVM برای اپلیکیشنهای مقیاسپذیر
- ادغام CoreML برای ویژگیهای یادگیری ماشین
مناسب برای توسعهدهندگانی با دانش پایه Swift یا برنامهنویسی که به دنبال تسلط بر iOS 18 و SwiftUI 6 هستند. مبتدیانی که تجربه برنامهنویسی دارند میتوانند این دوره را دنبال کنند، هرچند آشنایی قبلی با متغیرها، جریان کنترل و توابع مفید است. عالی برای توسعهدهندگان سطح متوسط iOS، سازندگان مشتاق اپلیکیشن و متخصصانی که میخواهند از جدیدترین فریمورکهای اپل استفاده کرده و اپلیکیشنهای واقعی با ویژگیهای پیشرفته مانند CoreML و UI تطبیقی بسازند.
- برنامه جامع ۸۰ ساعته پوششدهنده مبانی و موضوعات پیشرفته iOS 18 و SwiftUI 6
- بررسی دقیق مفاهیم برنامهنویسی Swift و تمرینهای عملی کدنویسی
- پوشش عمیق تکنیکهای مدیریت وضعیت شامل @State، @Binding و ObservableObjects
سرفصل ها و درس ها
مقدمه
Introduction
مرور دوره و نقشه راه
Course Overview & Roadmap
دانلود Xcode و ساخت اولین اپلیکیشن!
Downloading Xcode and Creating Our First App!
نمادهای SF Symbols
SF Symbols
سازگاری Xcode با نیازهای شما و میانبرهای ضروری کیبورد
Adapting Xcode to Your Needs and Essential Keyboard Shortcuts
مبانی زبان برنامهنویسی Swift
Swift Programming Language Fundamentals
مقدمهای بر مبانی Swift
Introduction to Swift Fundamentals
متغیرها و ثابتهای Let
Variables and Let Constants
آرایههای رشتهای و حلقههای for
String Arrays and for Loops
استراکتها (Structs) و آرایهای از استراکتها
Structs and Arrays of Structs
آپشنالها، if و if Let
Optionals, if, if Let
نکتهای درباره شکست خطوط
A Note About Line Breaks
انواع Int, Double, Float و Type of
Int, Double, Float, Type of
تقسیم، باقیمانده، حلقههای for و دستورات If بیشتر
Division, Modulo, More for Loops and If Statements
سادهسازی کد با استفاده از توابع
Simplifying the Code With a Function
رشتههای چندخطی
Multiline Strings
بیشتر درباره حلقهها (for, while, repeat)
More on Loops (for, while, repeat)
دستور Guard
The Guard Statement
تاپلها (Tuples) و تاپلهای نامگذاری شده
Tuples and Named Tuples
شمارشها (Enumerations)
Enumerations
ادامه شمارشها
Enumerations Continued
مقدمه تکمیلی Swift
Extended Introduction to Swift
مقدمه
Introduction
محاسبات ریاضی
Arithmetic
عملگرهای ترکیبی
Compound Operators
ادامه عملگرهای ترکیبی
Compound Operators Continued
رشتهها، توالیهای Escape، رشتههای چندخطی و Raw
Strings, Escape Sequences, Multi-line and Raw Strings
رشتهها: بخش دوم
Strings - Part 2
کلکسیونها: آرایهها و Enumerated
Collections - Arrays and Enumerated
کلکسیونها: مجموعهها (Sets)
Collections - Sets
کلکسیونها: دیکشنریها
Collections - Dictionaries
جریان کنترل: حلقهها
Control Flow - Loops
شرطها: دستور If، عبارتها و عملگر Ternary
Conditionals - If Statement, Expression, Ternary Operator
شرطها: دستور و عبارت Switch
Conditionals - Switch Statement and Expression
شرطها: Switch، تاپلها و بازهها
Conditionals - Switch - Tuples and Intervals
توابع
Functions
کلوژرها (Closures)
Closures
کلوژرهای دنباله دار متعدد
Multiple Trailing Closures
تمرینهای کدنویسی Swift
Swift Coding Exercises
مقدمه تمرینهای کدنویسی
Coding Exercises Introduction
تمرین: بخشپذیر بر ۷
Exercise - Divisible by 7
پاسخ: بخشپذیر بر ۷
Solution - Divisible by 7
تمرین: بخشپذیر بر D و محدوده مقسومعلیهها
Exercise - Divisible by D and Range of Divisors
پاسخ: بخشپذیر بر D و محدوده مقسومعلیهها
Solution - Divisible by D and Range of Divisors
تمرین: حلقهها - تابع توان
Exercise - Loops - Power Function
پاسخ: حلقهها - تابع توان
Solution - Loops - Power Function
تمرین: حلقهها - مجموع توانها
Exercise - Loops - Sums of Powers
پاسخ: حلقهها - مجموع توانها
Solution - Loops - Sums of Powers
تمرین: شمارش تکرارها
Exercise - Counting Occurrences
پاسخ: شمارش تکرارها
Solution - Counting Occurrences
تمرین: مستطیل کاراکتری
Exercise - Character Rectangle
پاسخ: مستطیل کاراکتری
Solution - Character Rectangle
تمرین: مجموع N توان
Exercise - Sum of N Powers
پاسخ: مجموع N توان
Solution - Sum of N Powers
تمرین: تابع کسینوس من
Exercise - My Cosine
پاسخ: تابع کسینوس من
Solution - My Cosine
تمرین: تابع لگاریتم من
Exercise - My Logarithm
پاسخ: تابع لگاریتم من
Solution - My Logarithm
بحث: «باگ» در تابع لگاریتم من
Discussion - My Logarithm - "Bug"
چاپ نامهای مرتب شده اعداد
Print Sorted Names of Numbers
پاسخ: چاپ نامهای مرتب شده اعداد
Solution - Print Sorted Names of Numbers
توابع مرتبه بالا و برنامهنویسی تابعی
Higher Order Functions and Functional Programming
مقدمهای بر توابع مرتبه بالا
Introduction to Higher Order Functions
کاوشی در توابع مرتبه بالا: بخش اول
An Excursion Into Higher Order Functions - Part 1
کاوشی در توابع مرتبه بالا: بخش دوم
An Excursion Into Higher Order Functions - Part 2
کاوشی در توابع مرتبه بالا: بخش سوم
An Excursion Into Higher Order Functions - Part 3
اپلیکیشن Greetings (سلام و احوالپرسی)
The Greetings App
مقدمهای بر اپلیکیشن Greetings
Introduction to the Greetings App
مقدمهای بر تغییردهندهها (Modifiers)
Introduction to Modifiers
استفاده بیشتر از Text Views در VStack
More Text Views in VStack
افزودن یک View
Adding a View
افزودن استراکت و آرایهای از استراکتها
Adding a Struct and an Array of Structs
سادهسازی کد با ForEach View
Simplifying the Code With a ForEach View
افزودن عنوان سلام و برخی Spacers
Add the Greeting Title and Some Spacers
پاکسازی کد و افزودن رنگ پسزمینه
Cleaning Up the Code and Adding a Background Color
افزودن پسزمینه گرادینت جذاب
Adding a Cool Gradient Background
رنگ تصادفی هنگام لمس و @State
Random Color on Tap Gesture and @State
انیمیشن تصادفی دایره با استفاده از متغیر @State
Random Animation of a Circle Using a @State Variable
ساخت زیرعنوان تصادفی
Creating a Random Subtitle
حالت تاریک (Dark Mode)
Dark Mode
افزودن آیکون اپلیکیشن
Adding an App Icon
افزودن مستندات کوتاه
Adding a Little Documentation
بومیسازی: روش جدید در مقابل روش قدیمی
Localization New Way vs Old Way
بومیسازی با استفاده از String Catalog (روش جدید)
Localization Using String Catalog New Way
بازنویسی کد و نکاتی درباره حالت افقی و پشتیبانی از آیپد
Code Refactorization and Some Thoughts on Landscape Mode and iPad Support
نمای افقی (Landscape)
Landscape View
تطبیق با حالتهای عمودی و افقی
Adapting to Portrait and Landscape Mode
پشتیبانی از آیپد
Supporting iPad
تغییر زبان UI و کپی در منوی متنی (Context Menu)
Change Language UI and Context Menu Copy
تغییر زبان و ذخیرهسازی با AppStorage
Change Language and Persist Using AppStorage
مثالی از TipKit
TipKit Example
وارد کردن صفحه شروع (Launch Screen) از نسخه قبلی
Importing Launch Screen From Previous Greetings App
پیوست: جایگزینی Context Menu با Menu
Appendix Replacing the Context Menu With a Menu
تطبیق با مک (Mac)
Adapting to Mac
(iOS18+) آیکونها: آیکونهای روشن، تاریک و رنگی در iOS 18
(iOS18+) Icons - Light, Dark and Tinted Icons in iOS 18
(iOS18+) دانلود Bakery Icon Creator و بررسی آیکونهای روشن، تاریک و رنگی
(iOS18+) Download Bakery Icon Creator and Explore Light, Dark and Tinted Icons
مبانی SwiftUI
SwiftUI Basics
مبانی SwiftUI: HStack, VStack, ZStack، رنگها و گرادینتها
SwiftUI Basics: HStack, VStack, ZStack, Colors and Gradients
متغیرهای State، ثابتهای Let، ژست لمس
State Variables, Let Constants, Tap Gesture
تراز متن چندخطی، چرخشهای سه بعدی
MultilineTextAlignment, Rotations in 3D
مبانی SwiftUI: انیمیت کردن فونت
SwiftUI Basics Animate Font
بررسی گریدها (Grids)
Exploring Grids
Navigation Stack و TextField
Navigation Stack and TextField
انیمیت کردن همه چیز
Animate Everything
مثال ساده از List
Simple List Example
تمرین ویدئویی: تصاعد حسابی
Video Exercise: Arithmetic Progression
بررسی کتابخانه Xcode: بخش اول
Exploring Xcode's Library Part 1
بررسی کتابخانه Xcode: بخش دوم
Exploring Xcode's Library Part 2
(جدید) بازی با Frameها
(NEW) Fun With Frames
(جدید) سادهسازی کد با استفاده از Custom View Modifier
(NEW) Simplifying the Code Using a Custom View Modifier
(جدید) معرفی Group Box View
(NEW) Introducing Group Box View
(جدید) Group Boxهای تو در تو: نمای اطلاعات کاربر
(NEW) Nested Group Boxes - User Info View
(iOS18+) Mesh Gradient در یک نگاه
(iOS18+) Mesh Gradient in a Nutshell
(iOS18+) انیمیت کردن Mesh Gradient با تایمر
(iOS18+) Animate Mesh Gradient With Timer
(iOS18+) Scroll Transition و Container Relative Frame
(iOS18+) Scroll Transition and Container Relative Frame
(iOS18+) Scroll Transition، کنتراست، روشنایی و آفست: افکت پارالاکس
(iOS18+) Scroll Transition, Contrast, Brightness, Offset - Parallax Effect
(iOS18+) Scroll Transition، مقیاس خاکستری و توان دوم مقدار فاز
(iOS18+) Scroll Transition, Gray Scale and Squaring the Phase Value
(iOS18+) Tab View، نقش جستجو و نوار کناری (Side Bar)
(iOS18+) Tab View, Search Role and Side Bar
(iOS18+) Tab View با قابلیت انتخاب
(iOS18+) Tab View With Selection
(iOS18+) Tab Section
(iOS18+) Tab Section
مقایسه Tab View در حالت افقی در مقابل عمودی در آیپد
Comparing Tab View in Landscape vs Portrait Mode on an iPad
(iOS18+) @Previewable
(iOS18+) @Previewable
بررسی افکتهای Blur
Exploring Blur Effects
بررسی Blend Modes
Exploring Blend Modes
تمرینهای رابط کاربری
User Interface Exercises
تمرین: نمای «همین حالا بخر» (Buy Now)
Exercise: Buy Now View
پاسخ نمای Buy Now: بخش اول
Solution - Buy Now View - Part 1
پاسخ نمای Buy Now: بخش دوم
Solution - Buy Now View - Part 2
جریان دادهها (Data Flow)
Data Flow
متغیرهای وضعیت (State Variables)
State Variables
پاسخ تمرین @State
Solution to @State Homework
معرفی مثال @Binding
Introducing @Binding Example
راهاندازی نماهای CustomColorPicker و ColorCircle
Setting Up CustomColorPicker and ColorCircle Views
انتخابگر رنگ سفارشی با استفاده از @Binding
Custom Color Picker Using @Binding
ObservedObject, StateObject, Published, Observable
ObservedObject, StateObject, Published, Observable
فریمورک Observation
Observation Framework
EnvironmentObject
EnvironmentObject
مهاجرت از پروتکل Observable Object به ماکروی Observable
Migrating From the Observable Object Protocol to the Observable Macro
مثالی از Environment
Environment Example
Bindable
Bindable
بررسی تصاویر و AsyncImage
Exploring Images and AsyncImage
شروع پروژه، وارد کردن تصاویر و Enumها
Start Project, Import Images, Enums
مقیاس تصویر: Scale to Fit در مقابل Fill
Image Scale to Fit vs Fill
نسبت تصویر (Aspect Ratio)
Aspect Ratio
اسکرول و پیمایش در تصاویر
Scroll and Iterate Through Images
اسکرول و Overlay آسان در انیمیشن
Scroll and Overlay With Ease in Animation
معرفی AsyncImage
Introducing AsyncImage
ادامه AsyncImage
AsyncImage Continued
سادهسازی کد AsyncImage
Simplifying the AsyncImage Code
تصاویر و LazyVGrid
Images and LazyVGrid
تمرین ویدئویی: تصویر پخش/توقف
Video Exercise: Play / Pause Image
پاسخ: تصویر پخش/توقف
Solution: Play / Pause Image
قطعه کدهای Xcode (Code Snippets)
Xcode Code Snippets
قطعه کدهای آماده (Code Snippets)
Code Snippets
نمای تببندی شده صفحهای
Page Tabbed View
قطعه کدهای دکمه
Button Snippets
متن گرادینت و ماسکها
Gradient Text and Masks
مثال جذاب ماسک کردن متن
Cool Masking Text Example
قطعه کدهای جذاب برای View
Nice Cool View Snippets
قطعه کد آواتار
Avatar Snippet
قطعه کد URL تصویر
Image URL Snippet
قطعه کد عالی برای سه دکمه پیشفرض
Awesome Three Button Default Snippet
انیمیت کردن فونت، وزن فونت و رنگ پیشزمینه
Animate Font, FontWeight and Foreground Color
رنگهای تصادفی و رنگ پسزمینه تصادفی
Random Colors and Random Background Color
قطعه کدهای ساده پسزمینه
Simple Background Snippets
انیمیشنها
Animations
انیمیشنهای SF Symbols: بخش اول
SF Symbols Animations Part 1
انتقالات محتوایی SF Symbols: بخش دوم
SF Symbols Content Transitions Part 2
انیمیشنهای فازی (Phase Animations): بخش اول
Phase Animations - Part 1
انیمیشنهای فازی: بخش دوم
Phase Animations - Part 2
انیمیشنهای فازی: بخش سوم
Phase Animations - Part 3
انیمیشنهای Key Frame
Key Frame Animations
(iOS18+) Breathe, Rotate, Wiggle
(iOS18+) Breathe, Rotate, Wiggle
(iOS18+) استفاده از SymbolEffect برای Breathe, Rotate, Wiggle
(iOS18+) Breathe, Rotate, Wiggle Using SymbolEffect
(iOS18+) تولید انیمیشن از SF Symbols
(iOS18+) Generating Animations From SF Symbols
انتقالات ناوبری (Navigation Transitions)
Navigation Transitions
(iOS18+) انتقال زوم ناوبری (Navigation Zoom Transition)
(iOS18+) Navigation Zoom Transition
ژستها (Gestures)
Gestures
مقدمهای بر ژستها (Gestures)
Introduction to Gestures
راهاندازی ساختار پروژه
Setting Up Project Structure
نمای متن زیبا
Nice Text View
نمای مربعها
Squares View
نمای بخش بزرگنمایی (Magnification)
Magnification Section View
نمای بزرگنمایی و بازگشت
Magnify and Bounce Back View
نمای بزرگنمایی و توقف
Magnify and Stay Still View
نمای بزرگنمایی و ذخیره وضعیت
Magnify and Store State View
نمای بخش ژست درگ (Drag)
Drag Gesture Section View
درگ و بازگشت
Drag and Bounce Back
درگ و توقف
Drag and Stay Still
درگ و ذخیره وضعیت
Drag and Store State
نمای بخش چرخش و کلیات
Rotate and General Section View
بازگشت در ژست چرخش
Rotate Gesture Bounce Back
توقف در ژست چرخش
Rotate Gesture Stay Still
ذخیره وضعیت در ژست چرخش
Rotate Gesture Store State
دموی ترکیبی چرخش، درگ و بزرگنمایی
Rotate, Drag and Magnify Gesture Demo
وضعیت ژست (Gesture State)
Gesture State
استایلدهی به Text Views: درونیابی رشته، Markdown و رشتههای Attributed
Stylizing Text Views: String Interpolation, Markdown, and Attributed Strings
استایلدهی به Text Views: مقدمه
Styling Text Views - Introduction
استایل شعر آکروستیک با درونیابی رشته
Style Acrostic Poems Using String Interpolation
مارکداون (Markdown)
Markdown
ترکیب Markdown و درونیابی رشته
Combining Markdown and String Interpolation
Markdown و کد
Markdown and Code
OpenURLAction
OpenURLAction
افزودن Alert به دموی OpenURLAction
Adding an Alert to OpenURLAction Demo
جمعبندی با استفاده از Inflect
Pluralization Using Inflect
لیست، MemberStyle و اندازهگیریها
List, MemberStyle, Measurements
تاریخها و Text View
Dates and the Text View
بخش اول: Attributed String - خلاقیت
Part 1 - Attributed String - Getting Creative
بخش دوم: خلاقیت با Attributed String
Part 2 - Getting Creative With Attributed String
جمعبندی Text View با استایل
Wrapping Up Text View With Style
رندر کننده متن (Text Renderer)
Text Renderer
(iOS18+) ایجاد افکت Blur با استفاده از Text Renderer
(iOS18+) Creating a Blur Effect Using Text Renderer
(iOS18+) افکت Wobble با استفاده از Metal Distortion Shader
(iOS18+) Wobble Using Metal Distortion Shader
سوالات جذاب و کاربردی
Cool and Interesting Questions
نشانگر گرادینت
Gradient Indicator
چالش FlexToGrid: تقسیم ۵۰ ۲۵ ۲۵
FlexToGrid Challenge 50 25 25 Split
رنگ عنوان NavigationStack
NavigationStack Title Color
درگ تصویر از بالا: بخش اول
Drag Image From Above - Part 1
درگ تصویر از بالا: بخش دوم
Drag Image From Above - Part 2
درگ تصویر از بالا: بخش سوم
Drag Image From Above - Part 3
حاشیه درخشان چندرنگ با استفاده از Trim
Multi-color Glowing Border Using Trim
نمای ToolTipView عمومی با LongPressGesture
Generic ToolTipView Using LongPressGesture
نمای شکلاتی: بخش اول
Chocolate View - Part 1
نمای شکلاتی: بخش دوم
Chocolate View - Part 2
استایلهای سفارشی Label
Custom Label Styles
چالش ComplexTextField
ComplexTextField Challenge
پاسخ ComplexTextField
ComplexTextField Solution
چالش Box Text View
Box Text View Challenge
فیلد متنی گسترشپذیر
Expandable Text Field
تغییردهندههای نمای سفارشی (Custom View Modifiers)
Custom View Modifiers
مقدمهای بر تغییردهندههای سفارشی (Custom Modifiers)
Introduction to Custom Modifiers
ساخت نمای Toast
Creating a Toast View
جدا کردن نمای اصلی از نمای Toast
Separating Main View and Toast View
ساخت Modifier برای Toast
Creating the Toast Modifier
سادهسازی با استفاده از View Extension
Simplification Using a View Extension
مقدمهای بر Gradient Border Shadow Modifier
Gradient Border Shadow Modifier Introduction
پیادهسازی Gradient Border Shadow Modifier
Implementing the Gradient Border Shadow Modifier
تمرین: تغییردهندههای تراز (Alignment Modifiers)
Exercise - Alignment Modifiers
پاسخ: تغییردهندههای تراز
Solution - Alignment Modifiers
تغییردهنده شکل پسزمینه سفارشی
Custom Background Shape Modifier
ماشین حساب با پشتیبانی از حالت روشن و تاریک
Calculator Supporting Light and Dark Mode
مقدمه ماشین حساب حالت روشن و تاریک
Introduction to the Light and Dark Mode Calculator
ماشین حساب: شروع کار
Calculator - Getting Started
طراحی Dribbble و انتخاب رنگهای ماشین حساب
Dribbble Design and Selecting the Calculator Colors
حالت تاریک و روشن
Dark and Light Mode
رنگها برای ماه و خورشید
Colors for Moon and Sun
ادامه نمای اصلی ماشین حساب
Continue Main Calculator View
پیادهسازی نمای خورشید و ماه
Implement Sun Moon View
پیادهسازی نمای محاسبات
Implementing the Computation View
شمارشها (Enumerations)
The Enumerations
نمای دکمه (Button View)
Button View
مدل دکمهها و نمای دکمههای محاسباتی
Buttons Model and Calcs Button View
توابع کمکی رشته
String Helper Functions
پیادهسازی منطق ماشین حساب: بخش اول
Implementing the Calculator Logic - Part 1
پیادهسازی منطق برابری
Implementing Equality Logic
پیادهسازی منطق نقطه اعشاری
Implementing the Decimal Point Logic
بازنویسی کد (Refactoring)
Refactoring Code
تشخیص آیپد
iPad Detection
تطبیق با آیپد: بخش اول
Adapting to iPad - Part 1
تطبیق با آیپد: بخش دوم
Adapting to iPad - Part 2
خداحافظ UIScreen!
UIScreen - Begone!
حذف No Symbol Found!
No Symbol Found - Away!
مقدمهای بر الگوی طراحی MVVM با پروژه دستور پخت
Introduction to the MVVM Design Pattern With Recipes
مثال MVVM: مدل دستور پخت
MVVM Example - Recipe Model
مثال MVVM: مدل نمای (ViewModel) دستور پخت
MVVM Example - Recipe View Model
مثال MVVM: نمای ListItem
MVVM Example - ListItem View
مثال MVVM: بهبود نما
MVVM Example - Improving the View
مثال MVVM: نمای ShowRecipeView
MVVM Example - ShowRecipeView
مثال MVVM: بهبود تصویر
MVVM Example - Touch Up the Image
بهروزرسانی MVVM دستور پخت با استفاده از @Observable
Recipe MVVM Updated Using @Observable
کپی پروژه و افزودن NavigationStack
Duplicate Project and Add NavigationStack
رویکرد جدید به MVVM
New Approach to MVVM
اپلیکیشن کلیدهای میانبر Brevis
Brevis Hotkeys App
مقدمهای بر اپلیکیشن Brevis
Introduction to the Brevis App
تغییردهندهها و مدل کلید میانبر
Modifiers and the Hotkey Model
مدل دستهبندی کلید میانبر
Hotkey Category Model
ViewModel دستهبندی کلید میانبر
Hotkey Category ViewModel
نمای اصلی کلیدهای میانبر
Main Hotkeys View
نمای بخش کلید میانبر
Hotkey Section View
ردیف کلید میانبر
Hotkey Row
توضیحات مدل کلید میانبر
Hotkey Model Description
نمای نماد کلید
Key Symbol View
فیلتر کردن مدلهای کلید میانبر
Filtering Hotkey Models
ساخت طرحهای (Schemes) جدید برای آیپد و مک
Creating New Schemes for iPad and Mac
ساخت تم (Theme)
Creating a Theme
تطبیق با پلتفرمهای مختلف
Adapting to Multiple Platforms
اپلیکیشن شمارش چینی
The Chinese Counting App
مقدمه اپلیکیشن چینی
Introduction to Chinese App
شروع کار: تست واحد (Unit Testing)
Getting Started - Unit Testing
تکمیل تست واحد MyMax
Completing the Unit Test of MyMax
مدل بازی
The Game Model
تولید اعداد صحیح تصادفی منحصربهفرد
Generate Unique Random Integers
تکمیل مدل بازی
Completing the Game Model
وارد کردن صداها و ساخت ViewModel
Importing Sounds and Creating the View Model
پیادهسازی پخش صداها
Implementing Play Sounds
تست صداها
Testing the Sounds
تکمیل Game ViewModel
Completing the Game View Model
نمای آیکون تنظیمات (Gear)
Gear Icon View
نمای امتیاز
Score View
نمای پین-یین (Pinyin)
Pinyin View
پشتیبانی از زبان چینی و تست واحد (TDD)
Chinese Support and Unit Test (TDD)
پیادهسازی num99ToChinese
Implement num99ToChinese
نمایش چینی و پین-یین
Display Chinese and Pinyin
نمای گزینههای عدد
Number Options View
بازنشانی بازی
Reset Game
نمای تنظیمات
Settings View
مدل ضربالمثلها
Proverbs Model
ViewModel ضربالمثلها
Proverbs View Model
نمای صفحه شروع (Splash Screen)
Splash Screen View
نمای متن بسیار جذاب
Very Cool Text View
افزودن انیمیشنهای صفحه شروع
Adding the Splash Screen Animations
دریافت نقلقول تصادفی
Get Random Quote
تکمیل نمای صفحه شروع
Completing the Splash Screen View
اکستنشن Int برای تبدیل num99 به چینی
num99 to Chinese Int Extension
برنامه FizzBuzz و برنامههایی که برنامه مینویسند!
FizzBuzz and Programs That Write Programs!
مقدمه FizzBuzz
Introduction to FizzBuzz
معرفی Fizz Buzz در Playground
Introducing Fizz Buzz in the Playground
نمای اصلی
The Main View
نمای درباره ما (About)
The About View
نمای تصویر پسزمینه
Background Image View
تکمیل نمای About
Completing the About View
نمای Fizz Buzz
The Fizz Buzz View
مدل الگوریتم Fizz Buzz
Fizz Buzz Algorithm Model
ViewModel الگوریتم Fizz Buzz
Fizz Buzz Algorithm View Model
اکستنشن Indent String
Indent String Extension
تکمیل مدل FizzBuzz
Complete the FizzBuzz Model
نمای سازنده کد (Code Creator)
Code Creator View
اصلاح کامنت پیشفرض و اجرای کد در REPL
Fix Default Comment and Running Code in a REPL
ساخت اکستنشن رنگ بر اساس یک صفحه HTML
Create a Color Extension Based on an HTML Page
مقدمه تبدیل برنامه نویسانه HTML به اکستنشن رنگ
Introduction to Programmatically Converting HTML to a Color Extension
استخراج رنگ از کد HTML
Extract Color From HTML Code
دریافت نام رنگ
Get Color Name
دریافت رنگ RGB
Get RGB Color
تولید کد Swift
Generate Swift Code
گسترش (Extending) رنگ
Extending Color
اکستنشنهای رنگ تصادفی
Random Color Extensions
تست گرید رنگها
Grid of Colors Test
تمرین ویدئویی برای سنجش درک شما
Video Exercise to Test Your Understanding
بررسی نمودارها (Charts)
Exploring Charts
مقدمه نمودارها (Charts)
Introduction to Charts
ساختار پوشهها و Arc View
Folder Structure and Arc View
قوس تصادفی از نمای لیست رنگها
Random Arc From Color List View
نمای دکمه رنگ
Color Button View
تست دکمه رنگ و نمودار میلهای: بخش اول
Color Button Test and Bar Chart - Part 1
تست دکمه رنگ و نمودار میلهای: بخش دوم
Color Button Test and Bar Chart - Part 2
سازماندهی سریهای نمودار - پایان دموی اول
Reorganize Chart Series - End of Chart Demo 1
دموی دوم: بررسی اولیه نمودارهای میلهای، حاشیهنویسی، مقیاس و ChartXYAxis
Demo 2 - First Exploration of Bar Charts, Annotations, Chart Scale, ChartXYAxis
استایل پیشزمینه و گروههای متعدد
Foreground Style, Multiple Groups
قابلیت مشاهده و موقعیت/تراز راهنمای نمودار (Legend)
Legend Visibility and Legend Position/Alignment
دموی سوم: ForEach و رنگهای سفارشی
Demo 3 - ForEach, Custom Colors
دموی سوم: نمودارهای میلهای، خطی و ناحیهای
Demo 3 - Bar, Line, Area Charts
دموی سوم: جابجایی بین حالت عمودی و افقی
Demo 3 - Toggle Vertical and Horizontal Mode
دموی سوم: رنگهای تصادفی - بخش اول
Demo 3 - Random Colors - Part 1
دموی سوم: رنگهای تصادفی - بازنویسی کد
Demo 3 - Random Colors - Code Refactorization
دموی سوم: رنگهای تصادفی - تکمیل برای نمودار میلهای
Demo 3 - Random Colors - Complete for Bar Chart
دموی چهارم: شروع کار
Demo 4 - Getting Started
دموی چهارم: تنظیم نما و افزودن عنوان با تراز
Demo 4 - Adjusting View, Adding Title With Alignment
دموی چهارم: دکمه تراز عنوان
Demo 4 - Title Alignment Button
دموی چهارم: پشتیبانی از حالت ویرایش و افزودن دکمه اشتراک
Demo 4 - Supporting Edit Mode, Add Share Button
دموی چهارم: Rule Mark قابل درگ - بخش اول
Demo 4 - Draggable Rule Mark - Part 1
دموی چهارم: Rule Mark قابل درگ - بخش دوم
Demo 4 - Draggable Rule Mark - Part 2
دموی چهارم: Rule Mark قابل درگ - بخش سوم
Demo 4 - Draggable Rule Mark - Part 3
دموی چهارم: افزودن حاشیهنویسی برای حالت ویرایش
Demo 4 - Adding an Annotation for Edit Mode
دموی چهارم: استراکت ChartItem
Demo 4 - ChartItem Struct
دموی چهارم: بازنویسی با ChartItem شگفتانگیز
Demo 4 - Refactoring With the Amazing ChartItem
دموی چهارم: بازنویسی LeftChartButtonsView
Demo 4 - Refactoring LeftChartButtonsView
دموی چهارم: بازنویسی RightChartButtonsView
Demo 4 - Refactoring RightChartButtonsView
دموی چهارم: بازنویسی نمای افقی نمودار میلهای
Demo 4 - Refactoring Bar Chart Horizontal View
دموی چهارم: بازنویسی LineChartHorizontalView
Demo 4 - Refactoring LineChartHorizontalView
دموی چهارم: تغییردهنده ChartDrag View
Demo 4 - ChartDrag View Modifier
دموی چهارم: بازنویسی LineChartVerticalView
Demo 4 - Refactoring LineChartVerticalView
دموی چهارم: ترکیب نماهای خطی و ناحیهای
Demo 4 - Combine Line and Area Views
دموی چهارم: بله! کار میکند!
Demo 4 - Yes! It Works!
دموی چهارم: تنظیم دکمه رنگ برای نماهای خطی و ناحیهای
Demo 4 - Adjusting Color Button for Line and Area Views
دموی چهارم: ویرایش عنوان و افزودن حاشیه
Demo 4 - Edit Title and Add Border
تمرین نمودار قیفی (Funnel Chart)
Funnel Chart Exercise
پاسخ نمودار قیفی
Funnel Chart Solution
ردیاب فعالیت: نمودارهای دایرهای و دوناتی با Swift Data
Activity Tracker - Pie Charts and Donut Charts With Swift Data
(جدید) راهاندازی پروژه و مدل فعالیت (Activity)
(NEW) Setting Up Project and Activity Model
(جدید) آشنایی با SectorMark، نمودار دایرهای و دوناتی
(NEW) Hello SectorMark, Pie Chart and Donut Chart
(جدید) ویژگیهای محاسباتی، اسلایدرها، TextFieldها و دکمهها
(NEW) Computed Properties, Sliders, TextFields, Buttons
(جدید) پیادهسازی افزودن فعالیت
(NEW) Implement Add Activity
(جدید) ActivityRow
(NEW) ActivityRow
(جدید) دکمه ویرایش، حذف و نمای عدم وجود محتوا
(NEW) Edit Button, Delete and Content Unavailable View
(جدید) اجرای اپلیکیشن
(NEW) Running the App
(جدید) رنگ پیشزمینه، بازنشانی ساعات در روز و اصلاح isSelected
(NEW) Foreground Color, Reset HoursPerDay, Modify isSelected
(جدید) پیادهسازی getSelected
(NEW) Implementing getSelected
(جدید) پسزمینه نمودار
(NEW) Chart Background
ادامه نمودارها: نمودارهای خطی
Charts Continued - Line Plots
(iOS18+) نمودار خطی از نقاط داده تصادفی
(iOS18+) Line Plot of Random Data Points
منحنی لیساژو (Lissajous Curve) و پارامتریسازی
Lissajous Curve and Parametrizations
(iOS18+) رسم توابع: کسینوس و چندجملهای تیلور آن
(iOS18+) Graphing Functions - Cosine and Its Taylor Polynomial
(iOS18+) پیادهسازی کسینوس و چندجملهای تیلور
(iOS18+) Implementation of Cosine and Its Taylor Polynomial
(iOS18+) افزودن دکمهها به نمای کسینوس و چندجملهای تیلور
(iOS18+) Adding Buttons to the Cosine and Taylor Polynomial View
مبانی MapKit
MapKit Fundamentals
سفر به اسپانیا با استفاده از MapKit و Markerها
Let's Visit Spain Using MapKit and Markers
استایلدهی و سفارشیسازی PolyLineها در نقشههای SwiftUI: دموی عملی
Styling and Customizing Polylines in SwiftUI Maps: A Practical Demo
ادامه دموی PolyLine
PolyLine Demo Continued
بررسی مکانها با MapKit: مناطق قابل تنظیم و موقعیت دوربین
Exploring Locations With MapKit - Adjustable Regions and Camera Positioning
نمای ZoomSliderView و ParisTitleView
ZoomSliderView and ParisTitleView
پیادهسازی ژست درگ و پین (Pin)
Implement Drag Gesture and Pin
کنترلهای نقشه
Map Controls
استایلهای نقشه
Map Styles
حالتهای تعاملی
Interaction Modes
نمای Look Around
Look Around View
بازی ریاضی با Core Data
Core Data Math Game
مقدمه بازی
Introduction to the Game
شروع پروژه، نمای اصلی و ساختار پوشهها
Starting Project, Main View, Folder Structure
منابع (Assets): بخش اول (موجودات و حبابها)
The Assets - Part 1 (Creatures and Bubbles)
منابع (Assets): بخش دوم (حبابها در Figma)
The Assets - Part 2 (Bubbles in Figma)
پشتیبانی از بومیسازی
Supporting Localizations
پایگاه داده امتیازات بالا و ViewModel
High Score Database and View Model
دریافت امتیازات بالا از دیتابیس
Fetch High Scores From Database
مرتبسازی، ذخیره، بهروزرسانی و حذف امتیازات بالا
Order High Scores, Save, Update and Delete
مدل مسئله (Problem Model)
Problem Model
مدل بازی
Game Model
افزودن Game ViewModel
Adding Game View Model
شروع نمای جمع و امتیازات بالا
Starting Addition and High Score View
نمای جانهای امتیاز (Score Lives)
Score Lives View
نمای حباب (Bubble View)
Bubble View
نمای گزینهها
Options View
نمای پایان بازی (Game Over)
Game Over View
بازگشت به ViewModel امتیازات بالا
Back to the High Score View Model
امتیاز بالای جدید در نمای بازی
New High Score in Game View
وارد کردن امتیاز بالای جدید
Enter New High Score
ادامه نمای امتیازات بالا
High Score View Continued
نمای رتبهبندی امتیازها: حالت ویرایش
Rank Score View - Edit Mode
نمای رتبهبندی امتیازها: حالت غیر ویرایش
RankScoreView - Not Edit Mode
حذف امتیاز بالا
Delete High Score
رفع یک باگ ظریف و حذف تقلب
Addressing a Subtle Bug, Remove Cheat
افزودن آیکون اپلیکیشن
Adding an App Icon
افزودن حالت ارتجاعی (Bounce) به دکمهها
Adding Some Bounce to the Buttons
سادهسازی پروژه با استفاده از Observation
Simplify Project Using Observation
بهروزرسانی
Updating
تبدیل بازی ریاضی به Swift Data
Converting to Swift Data Math Game
خوشآمدگویی به تبدیل Core Data به Swift Data
Welcome to Core Data to Swift Data
افزودن بازی با استفاده از SwiftData: کلاس مدل در SwiftData
Adding Game Using SwiftData - The Model Class in SwiftData
تبدیل HighScoreView و RankScoreView
Converting the HighScoreView and RankScoreView
تبدیل AdditionGameView
Converting the AdditionGameView
تبدیل EnterNewHighScoreView
Converting EnterNewHighScoreView
پاکسازی پروژه و ماکروی Preview
Cleaning Up the Project and the Preview Macro
مرتبسازی با استفاده از Sort Descriptor
Order Using a Sort Descriptor
بازنویسی Add و Update
Refactor Add and Update
ساخت و استقرار پیشبینی بقای تایتانیک با CoreML و CreateML
Building and Deploying Titanic Survival Predictions With CoreML and CreateML
ساخت مدل تایتانیک با CreateML
Create the Titanic Model With CreateML
مدل تایتانیک در Swift
The Titanic Model in Swift
رابط کاربری تایتانیک
The Titanic User Interface
نمای بخش Segment
Segment Section View
نمای بخش اسلایدر
Slider Section View
پیشبینی بقا
Predicting Survival
اپلیکیشن هشدار (Alarm)
Alarm App
ساخت پروژه Alarm (هشدار)
Create the Alarm Project
ساخت آیکون اپلیکیشن
Creating the App Icon
ساختار پوشهها
Folder Structure
بومیسازی
Localization
پالت رنگی
Color Palette
آیکون زمان روز: بخش اول
Time of Day Icon - Part 1
آیکون زمان روز: بخش دوم
Time of Day Icon - Part 2
مدل زمان (Time Model)
The Time Model
پشتیبانی از زمان و تاریخ
Time and Date Support
مدل هشدار (Alarm Model)
The Alarm Model
دادههای آزمایشی هشدار
Dummy Alarm Data
ساختار نمای صفحه شروع
Splash Screen View Structure
صفحه شروع: زیرنمای دایرههای متحرک
Splash Screen: Animated Circles Subview
نمای چهار دایره جذاب
Four Cool Circles View
صفحه شروع: انیمیت کردن چهار دایره جذاب
Splash Screen: Animate Four Cool Circles
نمای متن جذاب و فونتهای سفارشی
Cool Text View and Custom Fonts
وارد کردن تصویر و تکمیل صفحه شروع
Import Image and Complete Splash Screen
نمای فعالسازی اعلانها: ساختار کلی
Enable Notifications View - General Structure
MainGradient، ButtonView و تکمیل UI فعالسازی اعلانها
MainGradient, ButtonView and Complete Enable Notifications View UI
نمای درباره ما
About View
افزودن و ویرایش هشدار: بخش اول - نمای You Did It
Add and Edit Alarm - Part 1 - You Did It View
افزودن و ویرایش هشدار: بخش دوم - ToBedWakeUpView
Add and Edit Alarm - Part 2 - ToBedWakeUpView
دکمههای لغو و ذخیره
Cancel and Save Buttons
نمای Toggle هشدار
Alarm Toggle View
انتخابگر زمان (Time Picker)
Time Picker
نمای انتخاب فعالیت: بخش اول
Select Activity View - Part 1
نمای انتخاب فعالیت: بخش دوم
SelectActivityView - Part 2
بازگشت به نمای اصلی هشدار
Back to the Main Alarm View
ساخت نمای لیست هشدارها
Create List of the Alarms View
ادامه نمای لیست هشدارها
List of the Alarms View Continued
نمای ردیف هشدار (Alarm Row)
Alarm Row View
ساخت AddEditCircularAlarmView
Create AddEditCircularAlarmView
CentralDatePickerView
CentralDatePickerView
ویژگیهای محاسباتی نمای زمان دایرهای
Circular Time View Computed Properties
TimeArcView
TimeArcView
نمایش آیکون روی نمای زمان دایرهای
DisplayIconOnCircularTimeView
MainAddEditView
MainAddEditView
جایگزینی Context Menu با Menu
Replacing Context Menu With Menu
افزودن حاشیه به نمای انتخاب فعالیت
Add Border to Select Activity View
نمای گسترش یافته انتخاب فعالیت: ردیف دایرهها
Select Activity View Expanded - Row of Circles
نمای گسترش یافته انتخاب فعالیت: ردیف فعالیتها
Select Activity View Expanded - Row of Activities
نمای گسترش یافته انتخاب فعالیت در عمل
Select Activity View Expanded - In Action
گسترش رشتههای بومیسازی شده و افزودن زبانهای بیشتر
Extending Localized Strings and Adding More Languages
مدیریت اعلانهای محلی (Local Notification Manager)
Local Notification Manager
فعالسازی اعلانها و Scene Phase
Enable Notifications and Scene Phase
افزودن مدل هشدار و ذخیره وضعیت
Adding the Alarm Model and Saving State
دریافت هشدارهای در انتظار
Get Pending Alarms
صداها، پخش صدا، UI صداها: بخش اول
Sounds, Play Sounds, Sounds UI - Part 1
صداها، پخش صدا، UI صداها: بخش دوم
Sounds, Play Sounds, Sounds UI - Part 2
صداها، پخش صدا، UI صداها: بخش سوم
Sounds, Play Sounds, Sounds UI - Part 3
صداها، پخش صدا، UI صداها: بخش چهارم
Sounds, Play Sounds, Sounds UI - Part 4
صداها، پخش صدا، UI صداها: بخش پنجم
Sounds, Play Sounds, Sounds UI - Part 5
پاکسازی ToBedWakeUpView
Cleaning Up ToBedWakeUpView
لیست هشدارها و نمای ردیف هشدار: اتصال به بکاند
List of Alarms and Alarms Row View - Connect to Backend
ادامه نمای لیست هشدارها
List of Alarms View Continued
افزودن زمانبندی به مدیریت اعلانهای محلی
Adding Schedule to Local Notification Manager
ادامه افزودن زمانبندی به مدیریت اعلانهای محلی
Adding Schedule to Local Notification Manager Continued
درخواست حذف (Remove Request)
Remove Request
اتصال بکاند به نمای لیست هشدارها
Connecting Backend to List of Alarms View
قابلیت CancelSaveAlarm
CancelSaveAlarm Functionality
CancelSaveAlarm: زمانبندی هشدار هنگام ذخیره
CancelSaveAlarm - Schedule Alarm on Save
افزودن Sheet به ListOfAlarmsView و بکاند به AddEditAlarmView
Add Sheet to ListOfAlarmsView and Add Backend to AddEditAlarmView
Binding برای CurrentAlarmIndex و استفاده از Breakpoints
Binding CurrentAlarmIndex and Using Breakpoints
اعلان Push محلی در پیشزمینه
Foreground Local Push Notification
ListOfTheAlarmsView: شیت برای دکمه افزودن هشدار
ListOfTheAlarmsView - Sheet for Add Alarm Button
آمادهسازی زیرساخت برای AddEditCircularAlarmView
Prepare Groundwork for AddEditCircularAlarmView
نمای انتخاب هشدار
Choose Alarm View
قرار دادن نمای هشدار دایرهای در تصویر
Get Circular Alarm View in the Picture
بهبود تجربه کاربری: AlarmRowViewButton
Improve UX - AlarmRowViewButton
اصلاح مدل هشدار و اتصال نمای هشدار دایرهای
Tweak Alarm Model and Connect Circular Alarm View
تغییر بین نمای دایرهای و استاندارد
Toggle Between Circular and Standard View
تغییر نوع افزودن/ویرایش هشدار: نمای نمایش تصویر
Toggle Add Edit Alarm Type - Image Display View
تغییر نوع افزودن/ویرایش هشدار: نمای انتخاب
Toggle Add Edit Alarm Type - Select View
تمرین ویدئویی: DaysBackView
Video Exercise: DaysBackView
رسم و انیمیشن با Canvas و Timeline در SwiftUI
Drawing and Animating With Canvas & Timeline in SwiftUI
بررسی Canvas با اپلیکیشن تم عنکبوت
Exploring Canvas With a Spider-Themed App
تولید نقاط تصادفی روی Canvas
Generating Random Points on the Canvas
تعامل کاربر با ژست درگ
User Interaction With a Drag Gesture
رسم خطوط به نقطه درگ شده
Drawing Lines to the Dragged Point
رندر خطوط مشروط به نزدیکی
Rendering Lines Conditioned on Proximity
مقیاسبندی و رنگآمیزی نقاط بر اساس فاصله
Distance-Based Dot Scaling and Coloring
کمی سر و صدا: رسم پاهای عنکبوت
Let's Make Some Noise - Drawing the Spider Legs
جمعبندی با یک مقدمه متنی نرم
Wrapping Up With a Smooth Text Intro
ساخت ساعت دیجیتال آنی با TimelineView
Building a Real-Time Digital Clock With TimelineView
رسم ساعت آنالوگ با SwiftUI Canvas و Timeline View
Drawing an Analog Clock With SwiftUI Canvas and Timeline View
افزودن عقربهها به ساعت آنالوگ
Adding the Hands to the Analog Clock
افزودن اعداد به ساعت آنالوگ
Adding the Digits to the Analog Clock
ساعت آنالوگ: افزودن خطوط تیک (Tick Marks)
Analog Clock - Adding the Tick Marks
ساعت آنالوگ: افزودن دایره محیطی
Analog Clock - Adding the Surrounding Circle
بازی زندگی کانوی (Conway's Game of Life)
Conway's Game of Life
مقدمه بازی زندگی کانوی
Introduction to Conway's Game of Life
ساختار کلی نمای اصلی
General Structure of the Main View
نمای عنوان جذاب
Cool Title View
انتقال رنگها به پوشه Assets
Moving the Colors to the Assets Folder
منابع تصویری
Image Resources
BoardModel و متدهای بنیادی
BoardModel and Fundamental Methods
DesignType
DesignType
راهاندازی ویرایشگر الگو (Pattern Editor)
Setting Up the Pattern Editor
ساخت نمای گرید الگو
Creating the Pattern Grid View
نمای ویرایشگر الگو
Pattern Editor View
اعتبارسنجی شناسه
Identifier Validation
پیشنمایش کد
Code Preview
تولید کد الگو
Generating the Pattern Code
نهایی کردن DesignType با ویرایشگر الگو
Finalizing DesignType With the Pattern Editor
پیادهسازی applyDesignPattern در Board Model
Implementing applyDesignPattern in the Board Model
گرید موجودات (Creature Grid)
Creature Grid
پیادهسازی Board View
Implementing the Board View
پیادهسازی لمس برای افزودن الگوی طراحی در Board View
Implementing Tap to Add Design Pattern in Board View
تنظیم تصویر پسزمینه برای Board View
Setting a Background Image for the Board View
تولید نسل بعدی با تایمر در Game of Life View
Generating the Next Generation With a Timer in Game of Life View
تنظیم سرعت و بازنشانی بازی در GameOfLifeView
Adjusting Speed and Resetting the Game in GameOfLifeView
نمای انتخاب طراحی
Design Selection View
افزودن Scroll View به نمای انتخاب طراحی
Adding a Scroll View to the Design Selection View
ساخت کلکسیونهای stillLifeDesign, OscillatorsDesign و SpaceShipsDesign
Creating stillLifeDesign, OscillatorsDesign, and SpaceShipsDesign Collections
راهاندازی نمای کنترل
Setting Up the Control View
ساخت نمای دکمه
Creating the Button View
شمارش ControlButtonType
ControlButtonType Enumeration
افزودن دکمهها به نمای کنترل
Adding Buttons to the Control View
ساخت دکمههای طراحی برای نمای انتخاب طراحی
Creating the Design Buttons for the Design Selection View
چالش رابط کاربری فرم体 بدن (Body Shape UI)
Body Shape UI Challenge
مقدمه رابط کاربری فرم体 بدن (Body Shape UI)
Introduction to Body Shape UI
شروع کار و انتخاب رنگها
Getting Started and Selecting Colors
Icon Right
Icon Right
نمای پیام خوشآمدگویی
Welcome Message View
نمای وزن: بخش اول
Weight View Part 1
نمای وزن: بخش دوم - افزودن FillBarView
Weight View Part 2 Adding FillBarView
نمای خلاصه دادهها: ردیف اول
Data Summary View Row 1
نمای خلاصه دادهها: ردیف دوم
Data Summary View Row 2
نمای خلاصه دادهها: ردیف دوم - بخش دوم
Data Summary View Row 2 Part 2
نمای دکمهها
Buttons View
مقدمه صفحه شروع Body Shape UI
Intro to Body Shape UI Splash Screen
نمای صفحه شروع چالش Body Shape UI
Body Shape UI Challenge Splash Screen View
نمای نتایج: شروع کار
Results View - Getting Started
نمای نتایج: ساخت ردیف بالا
Results View - Create Top Row
نمای نوار تقویم: بخش اول
Calendar Bar View - Part 1
نمای نوار تقویم: نوار نقطه عمودی - بخش دوم
Calendar Bar View - Vertical Dot Bar - Part 2
نمای نوار تقویم: نوار نقطه عمودی isSelected - بخش سوم
Calendar Bar View - Vertical Dot Bar IsSelected - Part 3
نمای نوار تقویم: اصلاحات نوار نقطه عمودی - بخش چهارم
Calendar Bar View - Vertical Dot Bar Adjustments - Part 4
نمای نوار تقویم: افزودن نوار نقطه عمودی - بخش پنجم
Calendar Bar View - Add Vertical Dot Bar - Part 5
نمای نوار تقویم: افزودن نوار نقطه عمودی - بخش ششم
Calendar Bar View - Add Vertical Dot Bar - Part 6
ساختار کلی و کامپوننتهای جدید
General Structure and New Components
نمای فعالیتهای اصلی: بخش اول
Main Activities View - Part 1
نمای فعالیتهای اصلی: بخش دوم
Main Activities View - Part 2
تکمیل نمای فعالیتهای جاری
Completing Current Activities View
نمای ضربان قلب
Heart Rate View
تکمیل نمای نتیجه: بله!
Complete Result View - Yes!
ماشین حساب انعام (Tip Calculator)
Tip Calculator
مقدمه ماشین حساب انعام
Introduction to the Tip Calculator
شروع کار
Getting Started
نمای ماشین حساب انعام (مرور کلی)
Tip Calculator View (Overview)
بومیسازی
Localization
نمای پسزمینه و شکل سینوسی
Background View and Sine Shape
پشتیبانی از حالت روشن و تاریک
Supporting Light and Dark Mode
SubTotalView
SubTotalView
PaymentSummaryView
PaymentSummaryView
افزودن پشتیبانی آیپد برای PaymentSummaryView
Adding iPad Support for PaymentSummaryView
محاسبه انعام، صورتحساب و کل هر نفر
Calculating Tip, Bill, Total per Person
فرمتبندی و بومیسازی نمای خلاصه پرداخت
Format and Localize Payment Summary View
راهاندازی نمای انتخاب انعام (Choose Tip)
Setting Up Choose Tip View
SelectButtonView
SelectButtonView
Enum درصد انعام
Tip Percentage Enum
CustomTipView
CustomTipView
نمای انتخاب انعام
Choose Tip View
مدل انعام (Tip Model)
Tip Model
نمای وارد کردن کل مبلغ
Enter Total View
ادامه نمای ماشین حساب انعام
Tip Calculator View Continued
نمای عنوان
Title View
نمای تقسیم (Split View)
Split View
خروج از TextField با لمس بیرون
Tap Out of TextField
راهاندازی LandscapeTipCalculatorView
Setting Up LandscapeTipCalculatorView
تکمیل LandscapeTipCalculatorView
Completing the LandscapeTipCalculatorView
تطبیق با آیپد
Adapting to iPad
آیکون اپلیکیشن ماشین حساب انعام
App Icon of Tip Calculator
اپلیکیشن فلشکارت
Flashcards App
مقدمه فلشکارتها
Introduction to Flashcards
ساخت پروژه فلشکارت
Create Flashcard Project
ساخت مدلها
Creating the Models
وارد کردن تصاویر
Import Images
ساخت QuestionViewModel
Creating the QuestionViewModel
ساخت FlashCardViewModel
Creating the FlashCardViewModel
TwoSidedBackgroundView
TwoSidedBackgroundView
FillBar View
FillBar View
FlashItem View
FlashItem View
نمای هدر (Header)
Header View
نمای TextAndOptionalImage
TextAndOptionalImage View
نمای کارت
Card View
نمای کارت: ژستها
Card View - Gestures
نمای موضوع (Topic View)
Topic View
نمای سوالات
The Questions View
مخفی کردن Navigation Bar
Hide Navigation Bar
ساخت آیکون اپلیکیشن
Creating the App Icon
اکستنشن پشتیبانی از آیپد
iPad Support Extension
پشتیبانی از آیپد برای اپلیکیشن فلشکارت
iPad Support for Flashcard App
پشتیبانی از Markdown در نمای متن
Supporting Markdown in the Text View
پازل عرفانی (Mystic Puzzle)
Mystic Puzzle
ساخت مدل پازل
Creating the Puzzle Model
افزودن مستندات به مدل
Adding Documentation to the Model
افزودن ViewModel و اکستنشنها به CGPoint
Adding the View Model and Adding Extensions to CGPoint
افزودن کاشیها (Tiles) به نما
Adding Tiles to the View
افزودن کاشیهای بیشتر
Adding Some More Tiles
افزودن اعداد به نما
Adding Digits to the View
افزودن اعداد دو رقمی به نما
Adding the Two Digit Numbers to the View
افزودن تصاویر پسزمینه
Add Background Images
افزودن فونت سفارشی
Adding a Custom Font
حرکت کاشی هنگام لمس
Move Tile on Tap
بر هم زدن (Shuffle) کاشیها
Shuffle Tiles
افزودن دکمهها
Adding Buttons
پیادهسازی تابع done()
Implementing the done() Function
افزودن افکت صوتی
Adding a Sound Effect
ذخیره وضعیت با استفاده از JSONDecoder
Saving State Using JSONDecoder
افزودن آیکون اپلیکیشن
Add an App Icon
اپلیکیشن نقلقول روز
Quote of the Day App
گرم کردن با یک نمای عالی
Warming Up With an Awesome View
شروع کار با اپلیکیشن اصلی نقلقول
Getting Started With the Main Quote App
API نقلقول تصادفی و مدل نقلقول
Random Quote API and the Quote Model
نمای نقلقول
The Quote View
ViewModel نقلقول و فراخوانی API
The Quote View Model and an API Call
ترکیب همه بخشها
Putting It All Together
وارد کردن تصاویر
Import Images
نمای انتخاب تصویر
Select Image View
نمای انتخاب فونت
Select Font View
وارد کردن فونت سفارشی
Import Custom Font
افزودن فونتها به نمای انتخاب تصویر
Add Fonts to Select Image View
مدیریت نقلقولهای طولانی
Dealing With Large Quotes
اسلایدر برای شفافیت و اندازه متن
Sliders for Text Opacity and Size
کدنویسی سریع اپلیکیشن مدیتیشن آرامبخش
Speed Code a Chill Meditation App
اپلیکیشن مدیتیشن آرامبخش (Chill Meditation)
Chill Meditation App
اپلیکیشن مدیتیشن: بخش فرانتاند
Meditation App - Frontend
شروع کار
Getting Started
پالت رنگی و صفحه اصلی
Color Palette and the Home Screen
ساخت نمای Greetings
Creating the Greetings View
ساخت نمای Chips
Creating the Chips View
نمای مدیتیشن جاری
Current Meditation View
نمای Feature: بخش اول
The Feature View - Part 1
نمای Feature: بخش دوم
The Feature View - Part 2
نمای Feature: بخش سوم
The Feature View - Part 3
Tab View: بخش اول
Tab View - Part 1
Tab View: بخش دوم
Tab View - Part 2
پاکسازی کد
Cleaning Up the Code
رابط کاربری اپلیکیشن مالی
Finance App UI
مقدمه اپلیکیشن مالی
Intro Finance App
پالت رنگی و نمای آواتار
Color Palette and the Avatar View
ChoicesView با استفاده از لیستی از لیبلهای سفارشی
ChoicesView Using a List of Custom Labels
نمای About: اصلاحات نهایی و افزودن توضیحات اختیاری
About View - Final Tweaks and Adding an Optional Description
CreditCardView: وارد کردن EMV Chip از Figma
CreditCardView - Import EMV Chip From Figma
CreditCardView: تراشه (Chip)
CreditCardView - The Chip
CreditCardView: کار روی نما
CreditCardView - Working on the View
CreditCardViewPage
CreditCardViewPage
ادامه CreditCardViewPage
CreditCardViewPage Continued
تکمیل CreditCardViewPage
CreditCardViewPage Completed
CreditCardView: TopView
CreditCardView - TopView
CreditCardView: افزودن پوشهها
CreditCardView - Adding Folders
CreditCardView: TransactionView
CreditCardView - TransactionView
CreditCardView: وارد کردن آیکونها از FlatIcons
CreditCardView - Import Icons From FlatIcons
CreditCardView: استفاده از آیکونها
CreditCardView - Using Icons
YourBalanceView: شروع کار
YourBalanceView - Getting Started
YourBalanceView: گامهای اول
YourBalanceView - First Steps
YourBalanceView: طراحی هدر
YourBalanceView - Designing the Header
YourBalanceView: طراحی نمای مبلغ
YourBalanceView - Designing the Amount View
YourBalanceView: نمای عملیات (Actions)
YourBalanceView - Actions View
YourBalanceView: نمای عملیات هفته
YourBalanceView - Action of the Week View
YourBalanceView: نمای هزینههای ماهانه
YourBalanceView - Monthly Expenses View
YourBalanceView: تکمیل نمای هزینههای ماهانه
YourBalanceView - Monthly Expenses View Completed
YourBalanceView: بازنویسی Bar View در هزینههای ماهانه
YourBalanceView - Monthly Expenses View Refactoring Bar View
تمرین ویدئویی (UI تمرینات Apple Fitness)
Video Exercise (Apple Fitness Exercise UI)
مهم!
Important!
پاسخ: بخش اول
Solution - Part 1
پاسخ: بخش دوم
Solution - Part 2
پاسخ: بخش سوم
Solution - Part 3
پاسخ: بخش چهارم
Solution - Part 4
پاسخ: بخش پنجم
Solution - Part 5
پاسخ: بخش ششم
Solution - Part 6
حیوانات چندزبانه
Multilingual Animals
شروع کار و ساخت پسزمینه
Getting Started and Creating the Background
دریافت تصاویر از Pexels
Get Pictures From Pexels
تغییر اندازه و وارد کردن تصاویر
Resize and Import Images
شمارش تصاویر حیوانات (Animal Image Enum)
Animal Image Enumeration
مدل حیوانات
The Animal Model
نمای تصویر حیوان
The Animal Image View
گفتار (Speech)
Speech
AnimalViewModel
AnimalViewModel
Language ViewModel
Language View Model
AnimateView: تصویر
AnimateView: Image
دکمههای Animate View
Animate View Buttons
AnimateView: پرچمها
AnimateView: The Flags
ساخت آیکون اپلیکیشن
Creating the App Icon
تمرین رابط کاربری مدیریت تسک
Task Manager UI Exercise
بخش اول: نمای شروع کار
Part 1 - The Getting Started View
پالت رنگی
The Color Palette
ساخت نمای آواتار
Create the Avatar View
پاکسازی کد
Cleaning Up the Code
ساخت شکل سفارشی
Creating a Custom Shape
افزودن Navigation View
Adding a Navigation View
بازنویسی کد و افزودن نماهای متعدد
Code Refactoring and Adding Multiple Views
حالت تاریک
Dark Mode
بخش دوم: نمای بررسی ماهانه (Monthly Review)
Part 2 - The Monthly Review View
آواتار دایرهای
The Circle Avatar
تکمیل نمای آواتار بالا
Completing the Top Avatar View
دایرههای هممرکز با ForEach و ScaleEffect
Concentric Circles Using ForEach and ScaleEffect
نمای طراحی اپلیکیشن موبایل
Mobile App Design View
نمای عنوان بررسی ماهانه
Monthly Review Title View
نمای خلاصه تسکها
Task Summary View
نمایش نظرات